package com.artisan.pf4j.config;

import org.pf4j.DefaultPluginManager;
import org.pf4j.PluginManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * PF4J 插件配置类
 */
@Configuration
public class PluginConfig {

    /**
     * 配置插件管理器
     * 默认从 ./plugins 目录加载插件
     */
    @Bean
    public PluginManager pluginManager() {
        // 创建默认插件管理器
        PluginManager pluginManager = new DefaultPluginManager();
        
        // 加载插件
        pluginManager.loadPlugins();
        
        // 启动插件
        pluginManager.startPlugins();
        
        return pluginManager;
    }
}
